package com.redpack.redpost.util.dao;

import java.beans.Statement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import com.redpack.redpost.connection.RedpostConexion;
import com.redpack.redpost.util.to.*;


public class ArriboAdminDao {

	
public static int saveArribo(ArriboAdmin _ArriboAdmin)throws Exception {
	int lastInsertedId = -1;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		
		String sql = "" ;
			
			
			if(_ArriboAdmin.getStatus() == 1){
				
				sql = "INSERT INTO redpost.TBL_ARRIBO(nip, servicio, fecha_arribo, cve_guia_arribo,cve_mercancia,num_paquetes,status,DESC_MERCANCIA) VALUES (";
				sql += "'" + _ArriboAdmin.getNip() + "',";
				sql += _ArriboAdmin.getServicio() + ",";
				sql += " now() ,";
				sql += "'" + _ArriboAdmin.getCve_guia_arribo() + "',";
				sql += "'" + _ArriboAdmin.getCve_mercanciaArribo() + "',";
				sql += "'" + _ArriboAdmin.getNum_paquetes() + "',";
				sql +=  _ArriboAdmin.getStatus() + ",";
				sql += "'" + _ArriboAdmin.getDesc_mercancia() + "'";
				sql += ");";
				
			}
			
			
			try{
				
				ps = conn.prepareStatement(sql,PreparedStatement.RETURN_GENERATED_KEYS);
				ps.executeUpdate();

				ResultSet rskey = ps.getGeneratedKeys();
				if (rskey != null && rskey.next()) {
					lastInsertedId = rskey.getInt(1);
				}
				
				conn.commit( ) ;
				ps.close( ) ;
				conn.close( ) ;
			}
			catch ( Exception e ) {
				e.printStackTrace( ) ;			
				return lastInsertedId ;
			} finally {
			    if (conn != null) {
			        conn.close();
			    }
			}


		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return lastInsertedId ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
	return lastInsertedId;
}

public static boolean cambiaStatus( int cve_arribo , int status ) throws SQLException{
	boolean res = false ;
	Connection conn = null;
	conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	String sql = "UPDATE redpost.tbl_arribo set status="+status+" where cve_arribo ="+cve_arribo ;
	ps = conn.prepareStatement( sql ) ;
	ps.execute( ) ;

	res = true ;
	
	conn.commit( ) ;
	ps.close( ) ;
	conn.close( ) ;
	
	return res ;
}

public static boolean updateArribo(ArriboAdmin _ArriboAdmin)throws Exception {
	
	boolean res = false ;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		
		String sql = "" ;
			

				sql += "UPDATE redpost.tbl_arribo ";
				sql += "   SET  ";
				sql += " cve_guia_arribo='"+ _ArriboAdmin.getCve_guia_arribo() +"', ";
				sql += " cve_mercancia="+ _ArriboAdmin.getCve_mercanciaArribo() +", ";
				//sql += " servicio="+ _ArriboAdmin.getServicio()+", ";
				sql += " status="+ _ArriboAdmin.getStatus() +", ";
				sql += " comentario_status='"+ _ArriboAdmin.getComentario_status() +"', ";
				sql += " valor_mercancia_usd="+ _ArriboAdmin.getValor_mercancia() +", ";
				sql += " desc_mercancia='"+ _ArriboAdmin.getDesc_mercancia() +"', ";
				sql += " num_paquetes="+ _ArriboAdmin.getNum_paquetes() +", ";
				
				sql += " tipo_conv_captura="+ _ArriboAdmin.getHd_tipo_conversion_selec() +", ";
				sql += " peso_real_total_kg="+ _ArriboAdmin.getHd_sumPesoReal() +", ";
				sql += " peso_volumetrico_total_kg="+ _ArriboAdmin.getHd_sumPesoVolumetrico() +", ";
				sql += " impuestos_total="+ _ArriboAdmin.getHd_impuesto_mercancia_total() +", ";
				sql += " envio_entrega_total="+ _ArriboAdmin.getHd_servicio_entrega_total()  +", ";
				sql += " manejo_total="+ _ArriboAdmin.getHd_manejo_redpost_total() +", ";
				sql += " seguro_transporte_total="+ _ArriboAdmin.getHd_seguro_transporte_total() +", ";
				sql += " cargos_adicionales_total="+ _ArriboAdmin.getHd_adicionales_total() +", ";
				sql += " almacenaje_costo_total="+ _ArriboAdmin.getHd_almacenaje_total() +", ";
				sql += " otros="+ _ArriboAdmin.getHd_otros_cargos_total() +", ";
				sql += " tarifa_especial_val_merc="+ _ArriboAdmin.getHd_ImporteEspecial() +", ";
				sql += " total_pagado="+ _ArriboAdmin.getHd_pago_total() +", ";
				
				sql += " cve_guia_redpack='"+ _ArriboAdmin.getCve_guia_redpack() +"', ";
				sql += " cve_tipo="+ _ArriboAdmin.getCve_tipo() +", ";
				sql += " cve_ImporteEspecial="+ _ArriboAdmin.getCve_ImporteEspecial() +" ";
				
				
				sql += " WHERE cve_arribo ="+ _ArriboAdmin.getCve_arribo() +"; ";
				
			
			ps = conn.prepareStatement( sql ) ;
			ps.execute( ) ;

			res = true ;
			
			conn.commit( ) ;
			ps.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
		
}



public static int getLastInsertID(String statment)throws Exception {
	int lastInsertedId = -1;
	Connection conn = null;
	conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	
	PreparedStatement ps = null ;
	int res = 0 ;
	
	try{
		
		ps = conn.prepareStatement(statment,PreparedStatement.RETURN_GENERATED_KEYS);
		ps.executeUpdate();

		ResultSet rskey = ps.getGeneratedKeys();
		if (rskey != null && rskey.next()) {
			lastInsertedId = rskey.getInt(1);
		}
	}
	catch ( Exception e ) {
		e.printStackTrace( ) ;			
		return res ;
	} finally {
	    if (conn != null) {
	        conn.close();
	    }
	}
	return lastInsertedId;
}




public static boolean saveLogArribo(int cve_arribo)throws Exception {
	
	boolean res = false ;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		
		String sql = "" ;
			
			sql += " INSERT INTO redpost.tbl_arribo_log(";
			sql += " cve_arribo, nip, servicio, fecha_arribo, cve_guia_arribo, ";
			sql += " cve_mercancia, status, comentario_status, valor_mercancia_usd,"; 
			sql += " desc_mercancia, num_paquetes, cve_guia_redpack, num_orden, tipo_conv_captura, ";
			sql += " peso_real_total_lb, peso_real_total_kg, peso_volumetrico_total_kg,"; 
			sql += " peso_volumetrico_total_lb, impuestos_total, envio_entrega_total, ";
			sql += " manejo_total, seguro_transporte_total, cargos_adicionales_total,"; 
			sql += " devolucion, flete_devolucion, almacenaje_total, otros, tarifa_especial_val_merc, ";
			sql += " total_pagado, aplicar_puntos_rec, cve_direccion_alterna, activo,"; 
			sql += " almacenaje_costo_total, tarifa_devolucion)";
			
			sql += " SELECT cve_arribo, nip, servicio, fecha_arribo, cve_guia_arribo, cve_mercancia,"; 
			sql += " status, comentario_status, valor_mercancia_usd, desc_mercancia,"; 
			sql += " num_paquetes, cve_guia_redpack, num_orden, tipo_conv_captura, ";
			sql += " peso_real_total_lb, peso_real_total_kg, peso_volumetrico_total_kg, ";
			sql += " peso_volumetrico_total_lb, impuestos_total, envio_entrega_total, ";
			sql += " manejo_total, seguro_transporte_total, cargos_adicionales_total,";
			sql += " devolucion, flete_devolucion, almacenaje_total, otros, tarifa_especial_val_merc, ";
			sql += " total_pagado, aplicar_puntos_rec, cve_direccion_alterna, activo,"; 
			sql += " almacenaje_costo_total, tarifa_devolucion";
			sql += " FROM redpost.tbl_arribo  ";
					
			sql += " WHERE cve_arribo ="+ cve_arribo +"; ";
				
			
			ps = conn.prepareStatement( sql ) ;
			ps.execute( ) ;

			res = true ;
			
			conn.commit( ) ;
			ps.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
		
}


public static boolean updateArriboDevolucion(ArriboAdmin _ArriboAdmin)throws Exception {
	
	boolean res = false ;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		

		String sql = "" ;
			

				sql += "UPDATE redpost.tbl_arribo ";
				sql += "   SET  ";
				sql += " cve_guia_arribo='"+ _ArriboAdmin.getCve_guia_arribo() +"', ";
				sql += " cve_mercancia=0, ";
				sql += " status="+ _ArriboAdmin.getStatus() +", ";
				sql += " comentario_status='"+ _ArriboAdmin.getComentario_status() +"', ";
				sql += " valor_mercancia_usd=0, ";
				sql += " desc_mercancia='"+ _ArriboAdmin.getDesc_mercancia() +"', ";
				sql += " num_paquetes="+ _ArriboAdmin.getNum_paquetes() +", ";
				//sql += " cve_guia_redpack='"+ _ArriboAdmin.getCve_guia_redpack() +"', ";
				sql += " tipo_conv_captura=0, ";
				sql += " peso_real_total_kg=0, ";
				sql += " peso_volumetrico_total_kg=0, ";
				sql += " impuestos_total=0, ";
				sql += " envio_entrega_total=0, ";
				sql += " manejo_total=0, ";
				sql += " seguro_transporte_total=0, ";
				sql += " cargos_adicionales_total=0, ";

				sql += " otros=0, ";
				sql += " tarifa_especial_val_merc=0, ";
				sql += " almacenaje_costo_total="+ _ArriboAdmin.getAlmacenaje_total() +", ";
				sql += " devolucion=1, ";
				sql += " flete_devolucion="+ _ArriboAdmin.getFlete_devolucion() +", ";
				sql += " tarifa_devolucion="+ _ArriboAdmin.getTarifa_devolucion() +", ";
				sql += " total_pagado="+ _ArriboAdmin.getHd_ImporteDevolucionTotal() +", ";
				sql += " cve_tipo="+ _ArriboAdmin.getCve_tipo() +" ";
				
				sql += " WHERE cve_arribo ="+ _ArriboAdmin.getCve_arribo() +"; ";
				
			
			ps = conn.prepareStatement( sql ) ;
			ps.execute( ) ;

			res = true ;
			
			conn.commit( ) ;
			ps.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
		
}


public static boolean updateArriboGuiaRedPack(int cve_arribo,int folio)throws Exception {
	
	boolean res = false ;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		

		String sql = "" ;
			

				sql += "UPDATE redpost.tbl_arribo ";
				sql += "   SET  ";
				sql += " cve_guia_redpack='"+ folio +"' ";
				
				sql += " WHERE cve_arribo ="+ cve_arribo +"; ";
				
			
			ps = conn.prepareStatement( sql ) ;
			ps.execute( ) ;

			res = true ;
			
			conn.commit( ) ;
			ps.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
		
}

public static boolean updateStatusArribo(int cve_arribo,int status)throws Exception {
	
	boolean res = false ;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		

		String sql = "" ;
			

				sql += "UPDATE redpost.tbl_arribo ";
				sql += "   SET  ";
				sql += " status="+ status +" ";
				
				sql += " WHERE cve_arribo ="+ cve_arribo +"; ";
				
			
			ps = conn.prepareStatement( sql ) ;
			ps.execute( ) ;

			res = true ;
			
			conn.commit( ) ;
			ps.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
		
}

public static ArriboAdmin getArribo(int cve_arribo)throws Exception {
	
	Connection conn = RedpostConexion.openConnection( ) ;
	ArriboAdmin _ArriboAdmin = new ArriboAdmin();
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	ResultSet rs = null ;
	String sql = "" ;
	
	try{			
		
		sql = "select * from redpost.tbl_arribo where cve_arribo="+ cve_arribo +" and activo = 1 ;" ;
		ps = conn.prepareStatement( sql ) ;
		rs = ps.executeQuery();

		
		while (rs.next()) {

			_ArriboAdmin.setCve_arribo( rs.getInt("cve_arribo") );
			_ArriboAdmin.setNip( rs.getString("nip") );
		
			
			_ArriboAdmin.setCve_guia_arribo(rs.getString("cve_guia_arribo"));
			_ArriboAdmin.setStatus( rs.getInt("status") );
			_ArriboAdmin.setComentario_status(rs.getString("comentario_status"));
			_ArriboAdmin.setServicio(rs.getInt("servicio"));
			_ArriboAdmin.setCve_mercanciaArribo(rs.getInt("cve_mercancia"));
			_ArriboAdmin.setDesc_mercancia( rs.getString("desc_mercancia") );
			_ArriboAdmin.setValor_mercancia( rs.getFloat("valor_mercancia_usd") );
			_ArriboAdmin.setNum_paquetes(rs.getInt("num_paquetes"));
			_ArriboAdmin.setCve_guia_redpack(rs.getString("cve_guia_redpack"));
			_ArriboAdmin.setHd_tipo_conversion_selec(rs.getInt("tipo_conv_captura"));
			_ArriboAdmin.setHd_sumPesoReal(rs.getFloat("peso_real_total_kg"));
			_ArriboAdmin.setHd_sumPesoVolumetrico(rs.getFloat("peso_volumetrico_total_kg"));
			_ArriboAdmin.setHd_impuesto_mercancia_total(rs.getFloat("impuestos_total"));
			_ArriboAdmin.setHd_servicio_entrega_total(rs.getFloat("envio_entrega_total"));
			_ArriboAdmin.setHd_manejo_redpost_total(rs.getFloat("manejo_total"));
			_ArriboAdmin.setHd_seguro_transporte_total(rs.getFloat("seguro_transporte_total"));
			_ArriboAdmin.setHd_otros_cargos_total(rs.getFloat("otros"));
			_ArriboAdmin.setHd_adicionales_total(rs.getFloat("cargos_adicionales_total"));
			
			//dias almacenaje
			_ArriboAdmin.setAlmacenaje(rs.getInt("almacenaje_total"));
			//costo almacenaje
			_ArriboAdmin.setHd_almacenaje_total(rs.getFloat("almacenaje_costo_total"));
			_ArriboAdmin.setFlete_devolucion(rs.getFloat("flete_devolucion"));
			_ArriboAdmin.setHd_TarifaDevolucion(rs.getFloat("tarifa_devolucion"));
			
			_ArriboAdmin.setAplicar_puntos_rec(rs.getInt("aplicar_puntos_rec"));
			_ArriboAdmin.setDireccion_adicionales(rs.getInt("cve_direccion_alterna"));
			_ArriboAdmin.setHd_pago_total(rs.getFloat("total_pagado"));
			_ArriboAdmin.setActivo(rs.getInt("activo"));

		    //Tipo Arribo
			_ArriboAdmin.setHd_aplica_devolucion(rs.getInt("devolucion"));
			_ArriboAdmin.setCve_tipo(rs.getInt("cve_tipo"));
			
			//Tarifa especial
			_ArriboAdmin.setHd_ImporteEspecial(rs.getFloat("tarifa_especial_val_merc"));
			_ArriboAdmin.setCve_ImporteEspecial(rs.getInt("cve_ImporteEspecial"));
		}
		
		conn.commit( ) ;
		ps.close( ) ;
		conn.close( ) ;
		
		return _ArriboAdmin ;
		
	}catch ( Exception e ) {
		e.printStackTrace( ) ;
		return _ArriboAdmin = null ;
	} finally {
        if (conn != null) {
            conn.close();
        }
		
	}
	
}

public static boolean saveArchivoArribo(ArchivoArribo _ArchivoArribo) throws Exception {
	
	boolean res = false ;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		PreparedStatement ps = null ;
		
		String sql = "" ;

	
			sql = "INSERT INTO redpost.tbl_Archivo_Arribo(cve_ARRIBO, nombre_archivo, cve_tipo_archivo) VALUES (";
			sql +=  _ArchivoArribo.getCve_arribo() + ",";
			sql += "'" + _ArchivoArribo.getNom_archivo() + "',";
			sql +=  _ArchivoArribo.getCve_tipo_archivo() ;
			sql += ");";
			

			ps = conn.prepareStatement( sql ) ;
			ps.execute( ) ;

			res = true ;
			
			conn.commit( ) ;
			ps.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}
		
}


public static List getArchivoArribo(int cve_arribo,int cve_tipo_archivo) throws Exception {
	
	Connection conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	ResultSet rs = null ;
	List archivoArribo = new ArrayList(); 
	String sql = "" ;
	
	try{			
		//1 = Factura
		 //2 = FotografiaPaquete
		sql = "select * from redpost.tbl_Archivo_Arribo where activo = 1 and  cve_arribo ="+cve_arribo+ " and cve_tipo_archivo="+cve_tipo_archivo;
		ps = conn.prepareStatement( sql ) ;
		rs = ps.executeQuery();

		
		while (rs.next()) {
			ArchivoArribo row = new ArchivoArribo();
			
			row.setCve_Archivo(rs.getInt(1));
			row.setCve_arribo(rs.getInt(2));
			row.setCve_tipo_archivo(rs.getInt(4));
			row.setNom_archivo(rs.getString(3) );
			

			archivoArribo.add( row );
		}
		
		conn.commit( ) ;
		ps.close( ) ;
		conn.close( ) ;
		
		return archivoArribo ;
		
	}catch ( Exception e ) {
		e.printStackTrace( ) ;
		return archivoArribo ;
	} finally {
        if (conn != null) {
            conn.close();
        }
		
	}
}	

public static boolean delArchivoArribo( int cve_archivo,int cve_arribo ) throws Exception {
	Connection conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	boolean res = false ;
	String sql = ""  ;
	
	try{

		sql = "update redpost.tbl_Archivo_Arribo set activo=0 where cve_arribo=" +cve_arribo + " and cve_archivo="+cve_archivo;			
		ps = conn.prepareStatement( sql ) ;
		ps.execute();
		res = true ;
		
		conn.commit( ) ;
		ps.close( ) ;
		conn.close( ) ;
		return res ;
		
	}catch ( Exception e ) {
		e.printStackTrace( ) ;			
		return res ;
	} finally {
        if (conn != null) {
            conn.close();
        }
		
	}
}

public static boolean delArribo ( int cve_arribo ) throws Exception {
	Connection conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	boolean res = false ;
	String sql = ""  ;
	
	try{

		sql = "update redpost.TBL_ARRIBO set activo=0 where cve_arribo=" +cve_arribo;			
		ps = conn.prepareStatement( sql ) ;
		ps.execute();
		res = true ;
		
		conn.commit( ) ;
		ps.close( ) ;
		conn.close( ) ;
		return res ;
		
	}catch ( Exception e ) {
		e.printStackTrace( ) ;			
		return res ;
	} finally {
        if (conn != null) {
            conn.close();
        }
		
	}
}

public static List getArribos(  )throws Exception {
	
	Connection conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	ResultSet rs = null ;
	List arribos = new ArrayList(); 
	String sql = "" ;
	
	try{			
		
		
		
		sql += " select EA.descripcion as descripcion_status,* from redpost.tbl_arribo AR  " ;
		sql += " inner join redpost.tbl_estatus_arribo EA on EA.cve_estatus_arribo = AR.status  " ;
		sql += " where AR.status = EA.cve_estatus_arribo " ;
		sql += " and AR.activo = 1 or AR.activo = 2 order by cve_arribo desc;" ;
		
		
		ps = conn.prepareStatement( sql ) ;
		rs = ps.executeQuery();

		
		while (rs.next()) {
			ArriboAdmin row = new ArriboAdmin();
			
			
			row.setCve_arribo( rs.getInt("cve_arribo") );
			row.setNip( rs.getString("nip") );
			row.setFecha_arribo( rs.getDate("fecha_arribo") );
			row.setCve_guia_arribo(rs.getString("cve_guia_arribo"));
			row.setStatus( rs.getInt("status") );
			row.setDescripcion_status(rs.getString("descripcion_status"));
			row.setDesc_mercancia( rs.getString("desc_mercancia") );
			row.setNum_paquetes( rs.getInt("num_paquetes") );
			
			
			arribos.add( row );
		}
		
		conn.commit( ) ;
		ps.close( ) ;
		conn.close( ) ;
		
		return arribos ;
		
	}catch ( Exception e ) {
		e.printStackTrace( ) ;
		return arribos ;
	} finally {
        if (conn != null) {
            conn.close();
        }
		
	}
	
}



public static boolean IsUsuarioExiste(String nip) throws Exception {
	
	boolean res = false ;
	int cont = 0;
	Connection conn = null;
	try
	{	
		conn = RedpostConexion.openConnection( ) ;
		conn.setAutoCommit( false ) ;
		//PreparedStatement ps = null ;
		
		String sql = "" ;

	
			sql = "select * from  redpost.tbl_usuarioredpost where nip='"+nip+"'  ;";

			// Get a record count with the SQL Statement  
			java.sql.Statement stmt = conn.createStatement();  
			ResultSet rs = stmt.executeQuery(sql);  
			rs.next();  
			// Get the rowcount column value.  
			cont = rs.getRow() ;  
			rs.close() ;  

			if(cont > 0){
				res = true ;
			}
			
			
			conn.commit( ) ;
			rs.close( ) ;
			conn.close( ) ;
			
			return res ;
			
		}
		catch ( Exception e ) 
		{
			e.printStackTrace( ) ;			
			return res ;
		} 
		finally 
		{
            if (conn != null) 
            {
                conn.close();
            }
		}		
}

public static UsuarioRedpostTo getInfoUsuario(String nip) throws Exception {
	
	Connection conn = RedpostConexion.openConnection( ) ;
	conn.setAutoCommit( false ) ;
	PreparedStatement ps = null ;
	ResultSet rs = null ;

	String sql = "" ;
	
	UsuarioRedpostTo _UsuarioRedpost = new UsuarioRedpostTo();

	try{			
		
		sql = "select * from  redpost.tbl_usuarioredpost where nip='"+nip+"';";
		ps = conn.prepareStatement( sql ) ;
		rs = ps.executeQuery();
		_UsuarioRedpost.setIsExisteUsuario(false);
		
		while (rs.next()) {
			_UsuarioRedpost.setNip(rs.getString("nip"));
			_UsuarioRedpost.setServicio(rs.getInt("servicio"));
			//Direccion
			_UsuarioRedpost.setNombre(rs.getString("nombre") );
			_UsuarioRedpost.setApellidos(rs.getString("apellidos"));
			_UsuarioRedpost.setEmail(rs.getString("email"));
			
			
			_UsuarioRedpost.setIsExisteUsuario(true);
			/*
			if(rs.getInt("servicio") == 1)
			{
				_UsuarioRedpost.setServicio_texto("SERVICIO ECOEXPRESS");
			}
			else{
				_UsuarioRedpost.setServicio_texto("SERVICIO EXPRESS");
			}
			*/
			
		}
		
		conn.commit( ) ;
		ps.close( ) ;
		conn.close( ) ;
		
		return _UsuarioRedpost ;
		
	}catch ( Exception e ) {
		e.printStackTrace( ) ;
		return _UsuarioRedpost = null ;
	} finally {
        if (conn != null) {
            conn.close();
        }
		
	}
	
}


}
